package com.shunhao.utils

import android.content.Context
import android.graphics.drawable.Drawable
import android.widget.ImageView
import com.bumptech.glide.Glide
import com.bumptech.glide.load.resource.bitmap.CircleCrop
import com.bumptech.glide.request.RequestOptions

/**
 *类作用描述:   Kotlin的顶层函数
 *@author      KangGuiYang
 *创建时间      2020/6/18 13:04
 *邮箱        kangguiyang2@gmail.com
 *公司        南京舜贝佳信息科技 Shunbega.com
 */
// 加载网络图
fun ImageView.glideLoad(imgUrl: String, context: Context) {
    Glide.with(context).load(imgUrl).into(this)
}

// 加载网络高清大图
fun ImageView.glideBitMapLoad(imgUrl: String, context: Context) {
    Glide.with(context).asBitmap().load(imgUrl).into(this)
}

fun ImageView.glideGifLoad(imgUrl: String, context: Context) {
    Glide.with(context).load(imgUrl).into(this)
}


// 加载本地图片
fun ImageView.glideLocalLoad(drawable: Drawable, context: Context) {
    Glide.with(context).load(drawable).into(this)
}

// 加载网络图带占位图
fun ImageView.glideLoadWithPlace(imgUrl: String?, context: Context, imgId: Int) {
    Glide.with(context).load(imgUrl).apply(RequestOptions().placeholder(imgId))
        .into(this)
}

// 加载网络图带错误图
fun ImageView.glideLoadWithError(imgUrl: String, context: Context, imgId: Int) {
    Glide.with(context).load(imgUrl).apply(RequestOptions().error(imgId))
        .into(this)
}


fun ImageView.glideCircle(imgUrl:String,context: Context){
    Glide.with(context).load(imgUrl).apply(RequestOptions.bitmapTransform(CircleCrop())).into(this)
}

fun ImageView.glideCircleWithPlace(imgUrl:String,context: Context,imgId: Int){
    Glide
        .with(context)
        .load(imgUrl)
        .apply(RequestOptions.bitmapTransform(CircleCrop()))
        .apply(RequestOptions().error(imgId))
        .into(this)
}




